# Makefile.in generated by automake 1.16.2 from Makefile.am.
# @configure_input@

# Copyright (C) 1994-2020 Free Software Foundation, Inc.

# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

@SET_MAKE@

#
# test/Makefile.am --- automake input file for gawk
#
# Copyright (C) 1988-2020 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
#
# GAWK is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# GAWK is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
#
VPATH = @srcdir@
am__is_gnu_make = { \
  if test -z '$(MAKELEVEL)'; then \
    false; \
  elif test -n '$(MAKE_HOST)'; then \
    true; \
  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
    true; \
  else \
    false; \
  fi; \
}
am__make_running_with_option = \
  case $${target_option-} in \
      ?) ;; \
      *) echo "am__make_running_with_option: internal error: invalid" \
              "target option '$${target_option-}' specified" >&2; \
         exit 1;; \
  esac; \
  has_opt=no; \
  sane_makeflags=$$MAKEFLAGS; \
  if $(am__is_gnu_make); then \
    sane_makeflags=$$MFLAGS; \
  else \
    case $$MAKEFLAGS in \
      *\\[\ \	]*) \
        bs=\\; \
        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
    esac; \
  fi; \
  skip_next=no; \
  strip_trailopt () \
  { \
    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
  }; \
  for flg in $$sane_makeflags; do \
    test $$skip_next = yes && { skip_next=no; continue; }; \
    case $$flg in \
      *=*|--*) continue;; \
        -*I) strip_trailopt 'I'; skip_next=yes;; \
      -*I?*) strip_trailopt 'I';; \
        -*O) strip_trailopt 'O'; skip_next=yes;; \
      -*O?*) strip_trailopt 'O';; \
        -*l) strip_trailopt 'l'; skip_next=yes;; \
      -*l?*) strip_trailopt 'l';; \
      -[dEDm]) skip_next=yes;; \
      -[JT]) skip_next=yes;; \
    esac; \
    case $$flg in \
      *$$target_option*) has_opt=yes; break;; \
    esac; \
  done; \
  test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = test
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \
	$(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/gettext.m4 \
	$(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \
	$(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/lcmessage.m4 \
	$(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
	$(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \
	$(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/mpfr.m4 \
	$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/noreturn.m4 \
	$(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
	$(top_srcdir)/m4/readline.m4 $(top_srcdir)/m4/socket.m4 \
	$(top_srcdir)/m4/triplet-transformation.m4 \
	$(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo "  GEN     " $@;
am__v_GEN_1 = 
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 = 
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
  case $$AM_UPDATE_INFO_DIR in \
    n|no|NO) false;; \
    *) (install-info --version) >/dev/null 2>&1;; \
  esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Maketests ChangeLog \
	README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = $(LOCALES) AWKLIBPATH=../extension/.libs $(VALGRIND) $(AWKPROG) $(GAWK_TEST_ARGS)
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GAWKLIBEXT = @GAWKLIBEXT@
GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
GREP = @GREP@
HAVE_LIBSIGSEGV = @HAVE_LIBSIGSEGV@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMPFR = @LIBMPFR@
LIBOBJS = @LIBOBJS@
LIBREADLINE = @LIBREADLINE@
LIBS = @LIBS@
LIBSIGSEGV = @LIBSIGSEGV@
LIBSIGSEGV_PREFIX = @LIBSIGSEGV_PREFIX@
LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
LTLIBSIGSEGV = @LTLIBSIGSEGV@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
MSGMERGE = @MSGMERGE@
MSGMERGE_FOR_MSGFMT_OPTION = @MSGMERGE_FOR_MSGFMT_OPTION@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
POSUB = @POSUB@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOCKET_LIBS = @SOCKET_LIBS@
STRIP = @STRIP@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
YACC = @YACC@
YFLAGS = @YFLAGS@
ZOS_FAIL = @ZOS_FAIL@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
acl_shlibext = @acl_shlibext@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
pkgextensiondir = @pkgextensiondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
subdirs = @subdirs@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = \
	reg \
	lib \
	ChangeLog.0 \
	ChangeLog.1 \
	Gentests \
	Maketests \
	README \
	aadelete1.awk \
	aadelete1.ok \
	aadelete2.awk \
	aadelete2.ok \
	aarray1.awk \
	aarray1.ok \
	aasort.awk \
	aasort.ok \
	aasorti.awk \
	aasorti.ok \
	addcomma.awk \
	addcomma.in \
	addcomma.ok \
	anchgsub.awk \
	anchgsub.in \
	anchgsub.ok \
	anchor.awk \
	anchor.in \
	anchor.ok \
	apiterm.awk \
	apiterm.in \
	apiterm.ok \
	argarray.awk \
	argarray.in \
	argarray.ok \
	argtest.awk \
	argtest.ok \
	arrayind1.awk \
	arrayind1.in \
	arrayind1.ok \
	arrayind2.awk \
	arrayind2.ok \
	arrayind3.awk \
	arrayind3.ok \
	arrayparm.awk \
	arrayparm.ok \
	arrayprm2.awk \
	arrayprm2.ok \
	arrayprm3.awk \
	arrayprm3.ok \
	arrayref.awk \
	arrayref.ok \
	arraysort.awk \
	arraysort.ok \
	arraysort2.awk \
	arraysort2.ok \
	arraytype.awk \
	arraytype.ok \
	arraytype-mpfr.ok \
	arrdbg.awk \
	arrymem1.awk \
	arrymem1.ok \
	arryref2.awk \
	arryref2.ok \
	arryref3.awk \
	arryref3.ok \
	arryref4.awk \
	arryref4.ok \
	arryref5.awk \
	arryref5.ok \
	arynasty.awk \
	arynasty.ok \
	arynocls.awk \
	arynocls.in \
	arynocls.ok \
	aryprm1.awk \
	aryprm1.ok \
	aryprm2.awk \
	aryprm2.ok \
	aryprm3.awk \
	aryprm3.ok \
	aryprm4.awk \
	aryprm4.ok \
	aryprm5.awk \
	aryprm5.ok \
	aryprm6.awk \
	aryprm6.ok \
	aryprm7.awk \
	aryprm7.ok \
	aryprm8.awk \
	aryprm8.ok \
	aryprm9.awk \
	aryprm9.ok \
	arysubnm.awk \
	arysubnm.ok \
	aryunasgn.awk \
	aryunasgn.ok \
	asgext.awk \
	asgext.in \
	asgext.ok \
	asort.awk \
	asort.ok \
	asorti.awk \
	asorti.ok \
	assignnumfield.awk \
	assignnumfield.in \
	assignnumfield.ok \
	assignnumfield2.awk \
	assignnumfield2.ok \
	awkpath.ok \
	back89.awk \
	back89.in \
	back89.ok \
	backgsub.awk \
	backgsub.in \
	backgsub.ok \
	backw.awk \
	backw.in \
	backw.ok \
	backbigs1.awk \
	backbigs1.in \
	backbigs1.ok \
	backsmalls1.awk \
	backsmalls1.in \
	backsmalls1.ok \
	backsmalls2.awk \
	backsmalls2.ok \
	badargs.ok \
	badassign1.awk \
	badassign1.ok \
	badbuild.awk \
	badbuild.in \
	badbuild.ok \
	beginfile1.awk \
	beginfile1.ok \
	beginfile2.in \
	beginfile2.ok \
	beginfile2.sh \
	binmode1.ok \
	callparam.awk \
	callparam.ok \
	charasbytes.awk \
	charasbytes.in \
	charasbytes.ok \
	checknegtime.awk \
	childin.awk \
	childin.in \
	childin.ok \
	clobber.awk \
	clobber.ok \
	clos1way.awk \
	clos1way.ok \
	clos1way2.awk \
	clos1way2.in \
	clos1way2.ok \
	clos1way3.awk \
	clos1way3.ok \
	clos1way4.awk \
	clos1way4.ok \
	clos1way5.awk \
	clos1way5.ok \
	clos1way6.awk \
	clos1way6.ok \
	closebad.awk \
	closebad.ok \
	clsflnam.awk \
	clsflnam.in \
	clsflnam.ok \
	colonwarn.awk \
	colonwarn.in \
	colonwarn.ok \
	compare.awk \
	compare.in \
	compare.ok \
	compare2.awk \
	compare2.ok \
	concat1.awk \
	concat1.in \
	concat1.ok \
	concat2.awk \
	concat2.ok \
	concat3.awk \
	concat3.ok \
	concat4.awk \
	concat4.in \
	concat4.ok \
	concat5.awk \
	concat5.ok \
	convfmt.awk \
	convfmt.ok \
	crlf.awk \
	crlf.ok \
	datanonl.awk \
	datanonl.in \
	datanonl.ok \
	dbugeval.in \
	dbugeval.ok \
	dbugeval2.awk \
	dbugeval2.in \
	dbugeval2.ok \
	dbugeval3.awk \
	dbugeval3.in \
	dbugeval3.ok \
	dbugtypedre1.awk \
	dbugtypedre1.in \
	dbugtypedre1.ok \
	dbugtypedre2.awk \
	dbugtypedre2.in \
	dbugtypedre2.ok \
	defref.awk \
	defref.ok \
	delargv.awk \
	delargv.ok \
	delarpm2.awk \
	delarpm2.ok \
	delarprm.awk \
	delarprm.ok \
	delfunc.awk \
	delfunc.ok \
	delsub.awk \
	delsub.ok \
	devfd.in1 \
	devfd.in2 \
	devfd.in4 \
	devfd.in5 \
	devfd.ok \
	devfd1.awk \
	devfd1.ok \
	devfd2.ok \
	dfacheck1.awk \
	dfacheck1.in \
	dfacheck1.ok \
	dfacheck2.awk \
	dfacheck2.in \
	dfacheck2.ok \
	dfamb1.awk \
	dfamb1.in \
	dfamb1.ok \
	dfastress.awk \
	dfastress.ok \
	double1.awk \
	double1.ok \
	double2.awk \
	double2.ok \
	dtdgport.awk \
	dumpvars.in \
	dumpvars.ok \
	dynlj.awk \
	dynlj.ok \
	escapebrace.awk \
	escapebrace.in \
	escapebrace.ok \
	eofsplit.awk \
	eofsplit.ok \
	eofsrc1a.awk \
	eofsrc1b.awk \
	eofsrc1.ok \
	errno.awk \
	errno.in \
	errno.ok \
	exit.ok \
	exit.sh \
	exit2.awk \
	exit2.ok \
	exitval1.awk \
	exitval1.ok \
	exitval2.awk \
	exitval2.ok \
	exitval2.w32 \
	exitval3.awk \
	exitval3.ok \
	fcall_exit.awk \
	fcall_exit.ok \
	fcall_exit2.awk \
	fcall_exit2.in \
	fcall_exit2.ok \
	fflush.ok \
	fflush.sh \
	fieldwdth.awk \
	fieldwdth.in \
	fieldwdth.ok \
	filefuncs.awk \
	filefuncs.ok \
	fix-fmtspcl.awk \
	fldchg.awk \
	fldchg.in \
	fldchg.ok \
	fldchgnf.awk \
	fldchgnf.in \
	fldchgnf.ok \
	fldterm.awk \
	fldterm.in \
	fldterm.ok \
	fmtspcl-mpfr.ok \
	fmtspcl.awk \
	fmtspcl.tok \
	fmttest.awk \
	fmttest.ok \
	fnamedat.awk \
	fnamedat.in \
	fnamedat.ok \
	fnarray.awk \
	fnarray.ok \
	fnarray2.awk \
	fnarray2.in \
	fnarray2.ok \
	fnarydel-mpfr.ok \
	fnarydel.awk \
	fnarydel.ok \
	fnaryscl.awk \
	fnaryscl.ok \
	fnasgnm.awk \
	fnasgnm.in \
	fnasgnm.ok \
	fnmatch.awk \
	fnmatch.ok \
	fnmisc.awk \
	fnmisc.ok \
	fnparydl-mpfr.ok \
	fnparydl.awk \
	fnparydl.ok \
	forcenum.awk \
	forcenum.ok \
	forcenum-mpfr.ok \
	fordel.awk \
	fordel.ok \
	fork.awk \
	fork.ok \
	fork2.awk \
	fork2.ok \
	forref.awk \
	forref.ok \
	forsimp.awk \
	forsimp.ok \
	fpat1.awk \
	fpat1.in \
	fpat1.ok \
	fpat2.awk \
	fpat2.ok \
	fpat3.awk \
	fpat3.in \
	fpat3.ok \
	fpat4.awk \
	fpat4.ok \
	fpat5.awk \
	fpat5.in \
	fpat5.ok \
	fpat6.awk \
	fpat6.in \
	fpat6.ok \
	fpat7.awk \
	fpat7.in \
	fpat7.ok \
	fpat8.awk \
	fpat8.in \
	fpat8.ok \
	fpatnull.awk \
	fpatnull.in \
	fpatnull.ok \
	fsbs.awk \
	fsbs.in \
	fsbs.ok \
	fscaret.awk \
	fscaret.in \
	fscaret.ok \
	fsfwfs.awk \
	fsfwfs.in \
	fsfwfs.ok \
	fsnul1.awk \
	fsnul1.in \
	fsnul1.ok \
	fsrs.awk \
	fsrs.in \
	fsrs.ok \
	fsspcoln.awk \
	fsspcoln.in \
	fsspcoln.ok \
	fstabplus.awk \
	fstabplus.in \
	fstabplus.ok \
	fts.awk \
	functab1.awk \
	functab1.ok \
	functab2.awk \
	functab2.ok \
	functab3.awk \
	functab3.ok \
	functab4.awk \
	functab4.ok \
	functab5.awk \
	functab5.ok \
	funlen.awk \
	funlen.in \
	funlen.ok \
	funsemnl.awk \
	funsemnl.ok \
	funsmnam.awk \
	funsmnam.ok \
	funstack.awk \
	funstack.in \
	funstack.ok \
	fwtest.awk \
	fwtest.in \
	fwtest.ok \
	fwtest2.awk \
	fwtest2.in \
	fwtest2.ok \
	fwtest3.awk \
	fwtest3.in \
	fwtest3.ok \
	fwtest4.awk \
	fwtest4.in \
	fwtest4.ok \
	fwtest5.awk \
	fwtest5.in \
	fwtest5.ok \
	fwtest6.awk \
	fwtest6.in \
	fwtest6.ok \
	fwtest7.awk \
	fwtest7.in \
	fwtest7.ok \
	fwtest8.awk \
	fwtest8.in \
	fwtest8.ok \
	genpot.awk \
	genpot.ok \
	gensub.awk \
	gensub.in \
	gensub.ok \
	gensub2.awk \
	gensub2.ok \
	gensub3.awk \
	gensub3.in \
	gensub3.ok \
	getfile.awk \
	getfile.ok \
	getline.awk \
	getline.in \
	getline.ok \
	getline2.awk \
	getline2.ok \
	getline3.awk \
	getline3.ok \
	getline4.awk \
	getline4.in \
	getline4.ok \
	getline5.awk \
	getline5.ok \
	getlnbuf.awk \
	getlnbuf.in \
	getlnbuf.ok \
	getlndir.awk \
	getlndir.ok \
	getlnhd.awk \
	getlnhd.ok \
	getnr2tb.awk \
	getnr2tb.in \
	getnr2tb.ok \
	getnr2tm.awk \
	getnr2tm.in \
	getnr2tm.ok \
	gnuops2.awk \
	gnuops2.ok \
	gnuops3.awk \
	gnuops3.ok \
	gnureops.awk \
	gnureops.ok \
	gsubasgn.awk \
	gsubasgn.ok \
	gsubind.awk \
	gsubind.ok \
	gsubtest.awk \
	gsubtest.ok \
	gsubtst2.awk \
	gsubtst2.ok \
	gsubtst3.awk \
	gsubtst3.in \
	gsubtst3.ok \
	gsubtst4.awk \
	gsubtst4.ok \
	gsubtst5.awk \
	gsubtst5.in \
	gsubtst5.ok \
	gsubtst6.awk \
	gsubtst6.ok \
	gsubtst7.awk \
	gsubtst7.in \
	gsubtst7.ok \
	gsubtst8.awk \
	gsubtst8.in \
	gsubtst8.ok \
	gtlnbufv.awk \
	hello.awk \
	hex.awk \
	hex.ok \
	hex2.awk \
	hex2.in \
	hex2.ok \
	hsprint.awk \
	hsprint.ok \
	icasefs.awk \
	icasefs.ok \
	icasers.awk \
	icasers.in \
	icasers.ok \
	id.awk \
	id.ok \
	igncdym.awk \
	igncdym.in \
	igncdym.ok \
	igncfs.awk \
	igncfs.in \
	igncfs.ok \
	ignrcas2.awk \
	ignrcas2.ok \
	ignrcas3.awk \
	ignrcas3.ok \
	ignrcas4.awk \
	ignrcas4.ok \
	ignrcase.awk \
	ignrcase.in \
	ignrcase.ok \
	incdupe2.ok \
	incdupe3.ok \
	incdupe4.ok \
	incdupe5.ok \
	incdupe6.ok \
	incdupe7.ok \
	incdupe.ok \
	inchello.awk \
	inclib.awk \
	include2.ok \
	include.awk \
	include.ok \
	indirectbuiltin.awk \
	indirectbuiltin.ok \
	indirectcall2.awk \
	indirectcall2.ok \
	indirectcall.awk \
	indirectcall.in \
	indirectcall.ok \
	inftest.awk \
	inftest.ok \
	inplace1.1.ok \
	inplace1.2.ok \
	inplace.1.in \
	inplace1.ok \
	inplace2.1.bak.ok \
	inplace2.1.ok \
	inplace2.2.bak.ok \
	inplace2.2.ok \
	inplace2bcomp.1.ok \
	inplace2bcomp.1.orig.ok \
	inplace2bcomp.2.ok \
	inplace2bcomp.2.orig.ok \
	inplace2bcomp.ok \
	inplace.2.in \
	inplace2.ok \
	inplace3.1.bak.ok \
	inplace3.1.ok \
	inplace3.2.bak.ok \
	inplace3.2.ok \
	inplace3bcomp.1.ok \
	inplace3bcomp.1.orig.ok \
	inplace3bcomp.2.ok \
	inplace3bcomp.2.orig.ok \
	inplace3bcomp.ok \
	inplace3.ok \
	inplace.in \
	inpref.awk \
	inpref.in \
	inpref.ok \
	inputred.awk \
	inputred.ok \
	intarray.awk \
	intarray.ok \
	intest.awk \
	intest.ok \
	intformat.awk \
	intformat.ok \
	intprec.awk \
	intprec.ok \
	iobug1.awk \
	iobug1.ok \
	iolint.awk \
	iolint.ok \
	isarrayunset.awk \
	isarrayunset.ok \
	jarebug.awk \
	jarebug.in \
	jarebug.ok \
	jarebug.sh \
	lc_num1.awk \
	lc_num1.ok \
	leaddig.awk \
	leaddig.ok \
	leadnl.awk \
	leadnl.in \
	leadnl.ok \
	lint.awk \
	lint.ok \
	lintexp.awk \
	lintexp.ok \
	lintindex.awk \
	lintindex.ok \
	lintint.awk \
	lintint.ok \
	lintlength.awk \
	lintlength.ok \
	lintold.awk \
	lintold.in \
	lintold.ok \
	lintplus.awk \
	lintplus.ok \
	lintset.awk \
	lintset.ok \
	lintwarn.awk \
	lintwarn.ok \
	litoct.awk \
	litoct.in \
	litoct.ok \
	localenl.ok \
	localenl.sh \
	longsub.awk \
	longsub.in \
	longsub.ok \
	longwrds.awk \
	longwrds.in \
	longwrds.ok \
	manglprm.awk \
	manglprm.in \
	manglprm.ok \
	manyfiles.awk \
	manyfiles.ok \
	muldimposix.awk \
	muldimposix.ok \
	match1.awk \
	match1.ok \
	match2.awk \
	match2.ok \
	match3.awk \
	match3.in \
	match3.ok \
	math.awk \
	math.ok \
	mbfw1.awk \
	mbfw1.in \
	mbfw1.ok \
	mbprintf1.awk \
	mbprintf1.in \
	mbprintf1.ok \
	mbprintf2.awk \
	mbprintf2.ok \
	mbprintf3.awk \
	mbprintf3.in \
	mbprintf3.ok \
	mbprintf4.awk \
	mbprintf4.in \
	mbprintf4.ok \
	mbprintf5.awk \
	mbprintf5.in \
	mbprintf5.ok \
	mbstr1.awk \
	mbstr1.ok \
	mbstr2.awk \
	mbstr2.in \
	mbstr2.ok \
	membug1.awk \
	membug1.in \
	membug1.ok \
	memleak.awk \
	memleak.ok \
	messages.awk \
	minusstr.awk \
	minusstr.ok \
	mixed1.ok \
	mktime.awk \
	mktime.in \
	mktime.ok \
	mmap8k.awk \
	mmap8k.in \
	mmap8k.ok \
	mpfrbigint.awk \
	mpfrbigint.ok \
	mpfrbigint2.awk \
	mpfrbigint2.in \
	mpfrbigint2.ok \
	mpfrcase.awk \
	mpfrcase.in \
	mpfrcase.ok \
	mpfrcase2.awk \
	mpfrcase2.in \
	mpfrcase2.ok \
	mpfrexprange.awk \
	mpfrexprange.ok \
	mpfrfield.awk \
	mpfrfield.in \
	mpfrfield.ok \
	mpfrieee.awk \
	mpfrieee.ok \
	mpfrmemok1.awk \
	mpfrmemok1.ok \
	mpfrnegzero.awk \
	mpfrnegzero.ok \
	mpfrnonum.awk \
	mpfrnonum.in \
	mpfrnonum.ok \
	mpfrnr.awk \
	mpfrnr.in \
	mpfrnr.ok \
	mpfrrem.awk \
	mpfrrem.ok \
	mpfrrnd.awk \
	mpfrrnd.ok \
	mpfrrndeval.awk \
	mpfrrndeval.ok \
	mpfrsort.awk \
	mpfrsort.ok \
	mpfrsqrt.awk \
	mpfrsqrt.ok \
	mpfrstrtonum.awk \
	mpfrstrtonum.ok \
	mpfruplus.ok \
	mpfranswer42.awk \
	mpfranswer42.ok \
	mpgforcenum.awk \
	mpgforcenum.ok \
	mtchi18n.awk \
	mtchi18n.in \
	mtchi18n.ok \
	nasty.awk \
	nasty.ok \
	nasty2.awk \
	nasty2.ok \
	nastyparm.awk \
	nastyparm.ok \
	negexp.awk \
	negexp.ok \
	negrange.awk \
	negrange.ok \
	negtime.awk \
	negtime.ok \
	nested.awk \
	nested.in \
	nested.ok \
	next.ok \
	next.sh \
	nfldstr.awk \
	nfldstr.in \
	nfldstr.ok \
	nfloop.awk \
	nfloop.ok \
	nfneg.awk \
	nfneg.ok \
	nfset.awk \
	nfset.in \
	nfset.ok \
	nlfldsep.awk \
	nlfldsep.in \
	nlfldsep.ok \
	nlinstr.awk \
	nlinstr.in \
	nlinstr.ok \
	nlstrina.awk \
	nlstrina.ok \
	nlstringtest.awk \
	nlstringtest.ok \
	nlstringtest.po \
	nlstringtest-nogettext.ok \
	fr \
	noeffect.awk \
	noeffect.ok \
	nofile.ok \
	nofmtch.awk \
	nofmtch.ok \
	noloop1.awk \
	noloop1.in \
	noloop1.ok \
	noloop2.awk \
	noloop2.in \
	noloop2.ok \
	nondec.awk \
	nondec.ok \
	nondec2.awk \
	nondec2.ok \
	nonfatal1.awk \
	nonfatal1.ok \
	nonfatal2.awk \
	nonfatal2.ok \
	nonfatal3.awk \
	nonfatal3.ok \
	nonl.awk \
	nonl.in \
	nonl.ok \
	noparms.awk \
	noparms.ok \
	nors.in \
	nors.ok \
	nsawk1.awk \
	nsawk1a.ok \
	nsawk1b.ok \
	nsawk1c.ok \
	nsawk2.awk \
	nsawk2a.ok \
	nsawk2b.ok \
	nsbad.awk \
	nsbad.ok \
	nsbad_cmd.ok \
	nsforloop.awk \
	nsforloop.ok \
	nsfuncrecurse.awk \
	nsfuncrecurse.ok \
	nsindirect1.awk \
	nsindirect1.ok \
	nsindirect2.awk \
	nsindirect2.ok \
	nsprof1.awk \
	nsprof1.ok \
	nsprof2.awk \
	nsprof2.ok \
	nulinsrc.awk \
	nulinsrc.ok \
	nulrsend.awk \
	nulrsend.in \
	nulrsend.ok \
	numindex.awk \
	numindex.in \
	numindex.ok \
	numrange.awk \
	numrange.ok \
	numrange-mpfr.ok \
	numstr1.awk \
	numstr1.ok \
	numsubstr.awk \
	numsubstr.in \
	numsubstr.ok \
	octsub.awk \
	octsub.ok \
	ofmt.awk \
	ofmt.in \
	ofmt.ok \
	ofmta.awk \
	ofmta.ok \
	ofmtbig.awk \
	ofmtbig.in \
	ofmtbig.ok \
	ofmtfidl.awk \
	ofmtfidl.in \
	ofmtfidl.ok \
	ofmts.awk \
	ofmts.in \
	ofmts.ok \
	ofmtstrnum.awk \
	ofmtstrnum.ok \
	ofs1.awk \
	ofs1.in \
	ofs1.ok \
	onlynl.awk \
	onlynl.in \
	onlynl.ok \
	opasnidx.awk \
	opasnidx.ok \
	opasnslf.awk \
	opasnslf.ok \
	ordchr.awk \
	ordchr.ok \
	ordchr2.ok \
	out1.ok \
	out2.ok \
	out3.ok \
	paramasfunc1.awk \
	paramasfunc1.ok \
	paramasfunc2.awk \
	paramasfunc2.ok \
	paramdup.awk \
	paramdup.ok \
	paramres.awk \
	paramres.ok \
	paramtyp.awk \
	paramtyp.ok \
	paramuninitglobal.awk \
	paramuninitglobal.ok \
	parse1.awk \
	parse1.in \
	parse1.ok \
	parsefld.awk \
	parsefld.in \
	parsefld.ok \
	parseme.awk \
	parseme.ok \
	patsplit.awk \
	patsplit.ok \
	pcntplus.awk \
	pcntplus.ok \
	pid.awk \
	pid.ok \
	pid.sh \
	pipeio1.awk \
	pipeio1.ok \
	pipeio2.awk \
	pipeio2.in \
	pipeio2.ok \
	posix2008sub.awk \
	posix2008sub.ok \
	posix_compare.awk \
	posix_compare.ok \
	posix.awk \
	posix.in \
	posix.ok \
	poundbang.awk \
	prdupval.awk \
	prdupval.in \
	prdupval.ok \
	prec.awk \
	prec.ok \
	printf0.awk \
	printf0.ok \
	printf1.awk \
	printf1.ok \
	printfbad1.awk \
	printfbad1.ok \
	printfbad2.awk \
	printfbad2.in \
	printfbad2.ok \
	printfbad3.awk \
	printfbad3.ok \
	printfbad4.awk \
	printfbad4.ok \
	printfchar.awk \
	printfchar.ok \
	printfloat.awk \
	printhuge.awk \
	printhuge.ok \
	printlang.awk \
	prmarscl.awk \
	prmarscl.ok \
	prmreuse.awk \
	prmreuse.ok \
	procinfs.awk \
	procinfs.ok \
	profile0.awk \
	profile0.in \
	profile0.ok \
	profile2.ok \
	profile3.awk \
	profile3.ok \
	profile4.awk \
	profile4.ok \
	profile5.awk \
	profile5.ok \
	profile6.awk \
	profile6.ok \
	profile7.awk \
	profile7.ok \
	profile8.awk \
	profile8.ok \
	profile9.awk \
	profile9.ok \
	profile10.awk \
	profile10.ok \
	profile11.awk \
	profile11.ok \
	profile12.awk \
	profile12.in \
	profile12.ok \
	profile13.awk \
	profile13.ok \
	profile14.awk \
	profile14.ok \
	profile15.awk \
	profile15.ok \
	prt1eval.awk \
	prt1eval.ok \
	prtoeval.awk \
	prtoeval.ok \
	pty1.awk \
	pty1.ok \
	pty2.awk \
	pty2.ok \
	rand-mpfr.ok \
	rand.awk \
	rand.ok \
	randtest.sh \
	randtest.ok \
	range1.awk \
	range1.in \
	range1.ok \
	range2.awk \
	range2.ok \
	readbuf.awk \
	readbuf.ok \
	readdir.awk \
	readdir0.awk \
	readdir_retest.awk \
	readfile2.awk \
	readfile2.ok \
	rebrackloc.awk \
	rebrackloc.in \
	rebrackloc.ok \
	rebt8b1.awk \
	rebt8b1.ok \
	rebt8b2.awk \
	rebt8b2.ok \
	rebuf.awk \
	rebuf.in \
	rebuf.ok \
	rebuild.awk \
	rebuild.in \
	rebuild.ok \
	redfilnm.awk \
	redfilnm.in \
	redfilnm.ok \
	regeq.awk \
	regeq.in \
	regeq.ok \
	regexpbrack.awk \
	regexpbrack.in \
	regexpbrack.ok \
	regexpbrack2.awk \
	regexpbrack2.in \
	regexpbrack2.ok \
	regexprange.awk \
	regexprange.ok \
	reginttrad.awk \
	reginttrad.ok \
	regnul1.awk \
	regnul1.ok \
	regnul2.awk \
	regnul2.ok \
	regrange.awk \
	regrange.ok \
	regtest.sh \
	regx8bit.awk \
	regx8bit.ok \
	reindops.awk \
	reindops.in \
	reindops.ok \
	reint.awk \
	reint.in \
	reint.ok \
	reint2.awk \
	reint2.in \
	reint2.ok \
	reparse.awk \
	reparse.in \
	reparse.ok \
	resplit.awk \
	resplit.in \
	resplit.ok \
	revout.awk \
	revout.ok \
	revtwoway.awk \
	revtwoway.ok \
	rri1.awk \
	rri1.in \
	rri1.ok \
	rs.awk \
	rs.in \
	rs.ok \
	rscompat.awk \
	rscompat.in \
	rscompat.ok \
	rsgetline.awk \
	rsgetline.in \
	rsgetline.ok \
	rsglstdin.ok \
	rsnul1nl.awk \
	rsnul1nl.in \
	rsnul1nl.ok \
	rsnulbig.ok \
	rsnulbig2.ok \
	rsnulw.awk \
	rsnulw.in \
	rsnulw.ok \
	rsstart1.awk \
	rsstart1.in \
	rsstart1.ok \
	rsstart2.awk \
	rsstart2.in \
	rsstart2.ok \
	rsstart3.ok \
	rstest1.awk \
	rstest1.ok \
	rstest2.awk \
	rstest2.ok \
	rstest3.awk \
	rstest3.ok \
	rstest4.awk \
	rstest4.ok \
	rstest5.awk \
	rstest5.ok \
	rstest6.awk \
	rstest6.in \
	rstest6.ok \
	rswhite.awk \
	rswhite.in \
	rswhite.ok \
	rtlen.ok \
	rtlen.sh \
	rtlenmb.ok \
	rtlen01.ok \
	rtlen01.sh \
	rwarray.awk \
	rwarray.in \
	rwarray.ok \
	sandbox1.awk \
	sandbox1.ok \
	scalar.awk \
	scalar.ok \
	sclforin.awk \
	sclforin.ok \
	sclifin.awk \
	sclifin.ok \
	setrec0.awk \
	setrec0.in \
	setrec0.ok \
	setrec1.awk \
	setrec1.ok \
	shadow.awk \
	shadow.ok \
	shadowbuiltin.awk \
	shadowbuiltin.ok \
	sigpipe1.awk \
	sigpipe1.ok \
	sort1.awk \
	sort1.ok \
	sortempty.awk \
	sortempty.ok \
	sortfor.awk \
	sortfor.in \
	sortfor.ok \
	sortfor2.awk \
	sortfor2.in \
	sortfor2.ok \
	sortglos.awk \
	sortglos.in \
	sortglos.ok \
	sortu.awk \
	sortu.ok \
	sourcesplit.ok \
	space.ok \
	spacere.awk \
	spacere.ok \
	split_after_fpat.awk \
	split_after_fpat.in \
	split_after_fpat.ok \
	splitarg4.awk \
	splitarg4.in \
	splitarg4.ok \
	splitargv.awk \
	splitargv.in \
	splitargv.ok \
	splitarr.awk \
	splitarr.ok \
	splitdef.awk \
	splitdef.ok \
	splitvar.awk \
	splitvar.in \
	splitvar.ok \
	splitwht.awk \
	splitwht.ok \
	sprintfc.awk \
	sprintfc.in \
	sprintfc.ok \
	status-close.awk \
	status-close.ok \
	strcat1.awk \
	strcat1.ok \
	strfieldnum.awk \
	strfieldnum.in \
	strfieldnum.ok \
	strftime.awk \
	strftlng.awk \
	strftlng.ok \
	strftfld.awk \
	strftfld.in \
	strftfld.ok \
	strnum1.awk \
	strnum1.ok \
	strnum2.awk \
	strnum2.ok \
	strtod.awk \
	strtod.in \
	strtod.ok \
	strtonum.awk \
	strtonum.ok \
	strtonum1.awk \
	strtonum1.ok \
	stupid1.awk \
	stupid1.ok \
	stupid2.awk \
	stupid2.ok \
	stupid3.awk \
	stupid3.ok \
	stupid4.awk \
	stupid4.ok \
	subamp.awk \
	subamp.in \
	subamp.ok \
	subback.awk \
	subback.in \
	subback.ok \
	subi18n.awk \
	subi18n.ok \
	subsepnm.awk \
	subsepnm.ok \
	subslash.awk \
	subslash.ok \
	substr.awk \
	substr.ok \
	swaplns.awk \
	swaplns.in \
	swaplns.ok \
	switch2.awk \
	switch2.ok \
	symtab1.awk \
	symtab1.ok \
	symtab2.awk \
	symtab2.ok \
	symtab3.awk \
	symtab3.ok \
	symtab4.awk \
	symtab4.in \
	symtab4.ok \
	symtab5.awk \
	symtab5.in \
	symtab5.ok \
	symtab6.awk \
	symtab6.ok \
	symtab7.awk \
	symtab7.in \
	symtab7.ok \
	symtab8.awk \
	symtab8.in \
	symtab8.ok \
	symtab9.awk \
	symtab9.ok \
	symtab10.awk \
	symtab10.in \
	symtab10.ok \
	symtab11.awk \
	symtab11.ok \
	synerr1.awk \
	synerr1.ok \
	synerr2.awk \
	synerr2.ok \
	synerr3.awk \
	synerr3.ok \
	tailrecurse.awk \
	tailrecurse.ok \
	testext.ok \
	testext-mpfr.ok \
	time.awk \
	time.ok \
	timeout.awk \
	timeout.ok \
	tradanch.awk \
	tradanch.in \
	tradanch.ok \
	trailbs.awk \
	trailbs.in \
	trailbs.ok \
	tweakfld.awk \
	tweakfld.in \
	tweakfld.ok \
	typedregex1.awk \
	typedregex1.ok \
	typedregex2.awk \
	typedregex2.ok \
	typedregex3.awk \
	typedregex3.ok \
	typedregex4.awk \
	typedregex4.ok \
	typedregex5.awk \
	typedregex5.in \
	typedregex5.ok \
	typedregex6.awk \
	typedregex6.in \
	typedregex6.ok \
	typeof1.awk \
	typeof1.ok \
	typeof2.awk \
	typeof2.ok \
	typeof3.awk \
	typeof3.ok \
	typeof4.awk \
	typeof4.ok \
	typeof5.awk \
	typeof5.in \
	typeof5.ok \
	uninit2.awk \
	uninit2.ok \
	uninit3.awk \
	uninit3.ok \
	uninit4.awk \
	uninit4.ok \
	uninit5.awk \
	uninit5.ok \
	uninitialized.awk \
	uninitialized.ok \
	unterm.awk \
	unterm.ok \
	uparrfs.awk \
	uparrfs.in \
	uparrfs.ok \
	uplus.awk \
	uplus.ok \
	valgrind.awk \
	watchpoint1.awk \
	watchpoint1.in \
	watchpoint1.ok \
	watchpoint1.script \
	wideidx.awk \
	wideidx.in \
	wideidx.ok \
	wideidx2.awk \
	wideidx2.ok \
	widesub.awk \
	widesub.ok \
	widesub2.awk \
	widesub2.ok \
	widesub3.awk \
	widesub3.in \
	widesub3.ok \
	widesub4.awk \
	widesub4.ok \
	wjposer1.awk \
	wjposer1.in \
	wjposer1.ok \
	xref.awk \
	xref.original \
	zero2.awk \
	zero2.ok \
	zeroe0.awk \
	zeroe0.ok \
	zeroflag.awk \
	zeroflag.ok


# Get rid of core files when cleaning and generated .ok file
CLEANFILES = core core.* fmtspcl.ok

# try to keep these sorted. each letter starts a new line
BASIC_TESTS = \
	addcomma anchgsub anchor argarray arrayind1 arrayind2 arrayind3 arrayparm \
	arrayprm2 arrayprm3 arrayref arrymem1 arryref2 arryref3 arryref4 arryref5 \
	arynasty arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \
	aryprm8 aryprm9 arysubnm aryunasgn asgext awkpath \
	assignnumfield assignnumfield2 \
	back89 backgsub badassign1 badbuild \
	callparam childin clobber closebad clsflnam compare compare2 \
	concat1 concat2 concat3 concat4 concat5 convfmt \
	datanonl defref delargv delarpm2 delarprm delfunc \
	dfacheck2 dfamb1 dfastress dynlj \
	escapebrace eofsplit eofsrc1 exit2 exitval1 exitval2 exitval3 \
	fcall_exit fcall_exit2 fldchg fldchgnf fldterm fnamedat fnarray fnarray2 \
	fnaryscl fnasgnm fnmisc fordel forref forsimp fsbs fscaret fsnul1 \
	fsrs fsspcoln fstabplus funsemnl funsmnam funstack \
	getline getline2 getline3 getline4 getline5 getlnbuf getnr2tb getnr2tm \
	gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 gsubtst7 \
	gsubtst8 \
	hex hex2 hsprint \
	inpref inputred intest intprec iobug1 \
	leaddig leadnl litoct longsub longwrds \
	manglprm math membug1 memleak messages minusstr mmap8k \
	nasty nasty2 negexp negrange nested nfldstr nfloop nfneg nfset nlfldsep \
	nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl noparms \
	nors nulinsrc nulrsend numindex numrange numstr1 numsubstr \
	octsub ofmt ofmta ofmtbig ofmtfidl ofmts ofmtstrnum ofs1 onlynl \
	opasnidx opasnslf \
	paramasfunc1 paramasfunc2 paramdup paramres paramtyp paramuninitglobal \
	parse1 parsefld parseme pcntplus posix_compare posix2008sub prdupval prec printf0 \
	printf1 printfchar prmarscl prmreuse prt1eval prtoeval \
	rand randtest range1 range2 readbuf rebrackloc rebt8b1 rebuild redfilnm regeq \
	regexpbrack regexpbrack2 regexprange regrange reindops reparse resplit \
	rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnulw \
	rstest1 rstest2 rstest3 rstest4 rstest5 rswhite \
	scalar sclforin sclifin setrec0 setrec1 \
	sigpipe1 sortempty sortglos spacere splitargv splitarr \
	splitdef splitvar splitwht status-close \
	strcat1 strfieldnum strnum1 strnum2 strtod \
	subamp subback subi18n subsepnm subslash substr swaplns synerr1 synerr2 synerr3 \
	tailrecurse tradanch trailbs tweakfld \
	uninit2 uninit3 uninit4 uninit5 uninitialized unterm uparrfs uplus \
	wideidx wideidx2 widesub widesub2 widesub3 widesub4 wjposer1 \
	zero2 zeroe0 zeroflag

UNIX_TESTS = \
	fflush getlnhd localenl pid pipeio1 pipeio2 poundbang rtlen rtlen01 \
	space strftlng

GAWK_EXT_TESTS = \
	aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort arraysort2 \
	arraytype \
	backw badargs beginfile1 beginfile2 binmode1 \
	charasbytes colonwarn clos1way clos1way2 clos1way3 clos1way4 clos1way5 \
	clos1way6 crlf \
	dbugeval dbugeval2 dbugeval3 dbugtypedre1 dbugtypedre2 delsub \
	devfd devfd1 devfd2 dfacheck1 dumpvars \
	errno exit fieldwdth forcenum \
	fpat1 fpat2 fpat3 fpat4 fpat5 fpat6 fpat7 fpat8 fpatnull \
	fsfwfs funlen functab1 functab2 functab3 \
	fwtest fwtest2 fwtest3 fwtest4 fwtest5 fwtest6 fwtest7 fwtest8 \
	genpot gensub gensub2 gensub3 getlndir gnuops2 gnuops3 gnureops gsubind \
	icasefs icasers id igncdym igncfs ignrcas2 ignrcas4 ignrcase incdupe \
	incdupe2 incdupe3 incdupe4 incdupe5 incdupe6 incdupe7 include include2 \
	indirectbuiltin indirectcall indirectcall2 intarray iolint isarrayunset \
	lint lintexp lintindex lintint lintlength lintplus lintold lintset lintwarn \
	manyfiles match1 match2 match3 mbstr1 mbstr2 mixed1 mktime muldimposix \
	nastyparm negtime next nondec nondec2 nonfatal1 nonfatal2 nonfatal3 \
	nsawk1a nsawk1b nsawk1c nsawk2a nsawk2b \
	nsbad nsbad_cmd nsforloop nsfuncrecurse nsindirect1 nsindirect2 nsprof1 nsprof2 \
	patsplit posix printfbad1 printfbad2 printfbad3 printfbad4 printhuge \
	procinfs profile0 profile1 profile2 profile3 profile4 profile5 profile6 \
	profile7 profile8 profile9 profile10 profile11 profile12 profile13 \
        profile14 profile15 pty1 pty2 \
	rebuf regnul1 regnul2 regx8bit reginttrad reint reint2 rsgetline rsglstdin \
	rsstart1 rsstart2 rsstart3 rstest6 \
	sandbox1 shadow shadowbuiltin sortfor sortfor2 sortu \
	sourcesplit split_after_fpat \
	splitarg4 strftfld strftime strtonum strtonum1 \
	stupid1 stupid2 stupid3 stupid4 \
	switch2 symtab1 symtab2 symtab3 symtab4 symtab5 symtab6 symtab7 \
	symtab8 symtab9 symtab10 symtab11 \
	timeout typedregex1 typedregex2 typedregex3 typedregex4 \
	typedregex5 typedregex6 \
	typeof1 typeof2 typeof3 typeof4 typeof5 \
	watchpoint1

ARRAYDEBUG_TESTS = arrdbg
EXTRA_TESTS = inftest regtest ignrcas3 
INET_TESTS = inetdayu inetdayt inetechu inetecht
MACHINE_TESTS = double1 double2 intformat
LOCALE_CHARSET_TESTS = \
	asort asorti backbigs1 backsmalls1 backsmalls2 \
	fmttest fnarydel fnparydl jarebug lc_num1 mbfw1 \
	mbprintf1 mbprintf2 mbprintf3 mbprintf4 mbprintf5 \
	mtchi18n nlstringtest rebt8b2 rtlenmb sort1 sprintfc

SHLIB_TESTS = \
	apiterm \
	filefuncs fnmatch fork fork2 fts functab4 functab5 \
	getfile \
	inplace1 inplace2 inplace2bcomp inplace3 inplace3bcomp \
	ordchr ordchr2 \
	readdir readdir_test readdir_retest readfile readfile2 revout \
	revtwoway rwarray \
	testext time


# List of the tests which should be run with --debug option:
NEED_DEBUG = dbugtypedre1 dbugtypedre2 dbugeval2 dbugeval3 symtab10

# List of the tests which should be run with --lint option:
NEED_LINT = \
	defref fmtspcl lintexp lintindex lintint lintlength lintplus lintwarn \
	noeffect nofmtch nonl shadow uninit2 uninit3 uninit4 uninit5 uninitialized


# List of the tests which should be run with --lint-old option:
NEED_LINT_OLD = lintold

# List of tests that must be run with -M
NEED_MPFR = mpfrbigint mpfrbigint2 mpfrcase mpfrcase2 mpfrexprange mpfrfield mpfrieee mpfrmemok1 \
	mpfrnegzero mpfrnonum mpfrnr mpfrrem mpfrrnd mpfrrndeval mpfrsort mpfrsqrt \
	mpfrstrtonum mpgforcenum mpfruplus mpfranswer42


# List of tests that need --non-decimal-data
NEED_NONDEC = mpfrbigint2 nondec2 intarray forcenum

# List of tests that need --posix
NEED_POSIX = escapebrace printf0 posix2008sub paramasfunc1 paramasfunc2 muldimposix posix_compare

# List of tests that need --pretty-print
NEED_PRETTY = nsprof1 nsprof2 \
	profile4 profile5 profile8 profile9 profile10 profile11 profile13 \
	profile14 profile15


# List of tests that need --re-interval
NEED_RE_INTERVAL = gsubtst3 reint reint2

# List of tests that need --sandbox
NEED_SANDBOX = sandbox1

# List of tests that need --traditional
NEED_TRADITIONAL = litoct tradanch rscompat

# Lists of tests that run a shell script
RUN_SHELL = exit fflush localenl next randtest rtlen rtlen01

# List of the tests which fail with EXIT CODE 1
FAIL_CODE1 = \
	badassign1 badbuild callparam delfunc fcall_exit fcall_exit2 \
	fnamedat fnarray fnarray2 fnasgnm fnmisc funsmnam gsubasgn \
	incdupe2 lintwarn match2 mixed1 noparms paramasfunc1 paramasfunc2 \
	paramdup paramres parseme readbuf synerr1 synerr2 unterm


# Lists of tests that need particular locales
NEED_LOCALE_C = \
	clos1way gsubtst6 range2

NEED_LOCALE_EN = \
	backbigs1 backsmalls1 backsmalls2 concat4 dfamb1 ignrcas2 lc_num1 \
	mbfw1 mbprintf1 mbprintf3 mbprintf4 mbstr1 mbstr2 posix_compare \
	printhuge reint2 rri1 subamp subi18n wideidx wideidx2 \
	widesub widesub2 widesub3 widesub4


# Unused at the moment, since nlstringtest has additional stufff it does
# NEED_LOCALE_FR =
# Same for ignrcas3
# NEED_LOCALE_GR =
NEED_LOCALE_JP = mbprintf2
NEED_LOCALE_RU = mtchi18n

# List of tests that fail on DJGPP
EXPECTED_FAIL_DJGPP = \
	backbigs1 backsmalls1 backw beginfile1 clos1way clos1way2 \
	clos1way3 clos1way4 clos1way5 clos1way6 errno getlndir \
	getlnhd gnuops3 gnureops id ignrcas3 inetdayt inetdayu \
	inetecht inetechu inftest jarebug mbfw1 mbprintf1 mbprintf4 \
	mbstr1 mbstr2 mpfrsqrt nonfatal1 nonfatal2 nonfatal3 pid pty1 pty2 \
	randtest regx8bit strtod sigpipe1 symtab6 timeout


# List of tests that fail on MinGW
EXPECTED_FAIL_MINGW = \
	backbigs1 backsmalls1 clos1way6 devfd devfd1 devfd2 \
	errno exitval2 fork fork2 fts getfile getlnhd ignrcas3 inetdayt \
	inetecht mbfw1 mbprintf1 mbprintf4 mbstr1 mbstr2 pid pipeio2 \
	pty1 pty2 readdir rstest4 rstest5 status-close timeout


# List of tests that fail on z/OS
EXPECTED_FAIL_ZOS = \
	aasort aasorti arraysort asort asorti backbigs1 backsmalls1 \
	backsmalls2 beginfile1 beginfile2 charasbytes clos1way6 concat4 \
	dfamb1 double1 double2 errno fmttest forcenum getlndir gsubtst5 \
	ignrcas2 lc_num1 localenl localenl mbfw1 mbprintf1 mbprintf2 \
	mbprintf3 mbprintf4 mbprintf5 mbstr1 mbstr2 mtchi18n nlstringtest \
	nofile nonfatal2 numrange printhuge profile5 profile5 rebt8b2 \
	posix_compare \
	regrange reint2 rri1 sigpipe1 sort1 sortfor sortu space sprintfc \
	subamp subi18n symtab1 symtab11 symtab8 timeout wideidx wideidx2 \
	widesub widesub2 widesub3 widesub4


# List of the files that appear in manual tests or are for reserve testing:
GENTESTS_UNUSED = Makefile.in checknegtime.awk dtdgport.awk fix-fmtspcl.awk \
	fmtspcl-mpfr.ok fmtspcl.awk fmtspcl.tok gtlnbufv.awk hello.awk \
	inchello.awk inclib.awk inplace.1.in inplace.2.in inplace.in \
	printfloat.awk readdir0.awk valgrind.awk xref.awk


# List of tests on MinGW or DJGPP that need a different cmp program
NEED_TESTOUTCMP = \
	beginfile2 double2 exit fmttest hsprint posix profile5 space

CMP = cmp
AWKPROG = ../gawk$(EXEEXT)
SORT = sort

# Default for VALGRIND is empty unless overridden by a command-line argument.
# This protects against cruft in the environment.
VALGRIND = 

# This business forces the locale to be C for running the tests,
# unless we override it to something else for testing.
#
# This can also be done in individual tests where we wish to
# check things specifically not in the C locale.

#
# And we set AWKLIBPATH to find the extension libraries we built.
LOCALES = LANGUAGE= LC_ALL=$${GAWKLOCALE:-C} LANG=$${GAWKLOCALE:-C}
all: all-am

.SUFFIXES:
$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am $(srcdir)/Maketests $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
	        && { if test -f $@; then exit 0; else break; fi; }; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu test/Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --gnu test/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
	esac;
$(srcdir)/Maketests $(am__empty):

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh

$(top_srcdir)/configure:  $(am__configure_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
tags TAGS:

ctags CTAGS:

cscope cscopelist:


distdir: $(BUILT_SOURCES)
	$(MAKE) $(AM_MAKEFLAGS) distdir-am

distdir-am: $(DISTFILES)
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	list='$(DISTFILES)'; \
	  dist_files=`for file in $$list; do echo $$file; done | \
	  sed -e "s|^$$srcdirstrip/||;t" \
	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
	case $$dist_files in \
	  */*) $(MKDIR_P) `echo "$$dist_files" | \
			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
			   sort -u` ;; \
	esac; \
	for file in $$dist_files; do \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  if test -d $$d/$$file; then \
	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
	    if test -d "$(distdir)/$$file"; then \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
	  else \
	    test -f "$(distdir)/$$file" \
	    || cp -p $$d/$$file "$(distdir)/$$file" \
	    || exit 1; \
	  fi; \
	done
check-am: all-am
check: check-am
all-am: Makefile
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	if test -z '$(STRIP)'; then \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	      install; \
	else \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
	fi
mostlyclean-generic:

clean-generic:
	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
clean: clean-am

clean-am: clean-generic clean-local mostlyclean-am

distclean: distclean-am
	-rm -f Makefile
distclean-am: clean-am distclean-generic

dvi: dvi-am

dvi-am:

html: html-am

html-am:

info: info-am

info-am:

install-data-am:

install-dvi: install-dvi-am

install-dvi-am:

install-exec-am:

install-html: install-html-am

install-html-am:

install-info: install-info-am

install-info-am:

install-man:

install-pdf: install-pdf-am

install-pdf-am:

install-ps: install-ps-am

install-ps-am:

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-generic

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am:

.MAKE: install-am install-strip

.PHONY: all all-am check check-am clean clean-generic clean-local \
	cscopelist-am ctags-am distclean distclean-generic distdir dvi \
	dvi-am html html-am info info-am install install-am \
	install-data install-data-am install-dvi install-dvi-am \
	install-exec install-exec-am install-html install-html-am \
	install-info install-info-am install-man install-pdf \
	install-pdf-am install-ps install-ps-am install-strip \
	installcheck installcheck-am installdirs maintainer-clean \
	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
	pdf-am ps ps-am tags-am uninstall uninstall-am

.PRECIOUS: Makefile


# Message stuff is to make it a little easier to follow.
# Make the pass-fail last and dependent on others to avoid
# spurious errors if `make -j' in effect.
check:	msg \
	printlang \
	basic-msg-start  basic           basic-msg-end \
	unix-msg-start   unix-tests      unix-msg-end \
	extend-msg-start gawk-extensions arraydebug-tests extend-msg-end \
	machine-msg-start machine-tests machine-msg-end \
	charset-tests-all \
	shlib-msg-start  shlib-tests     shlib-msg-end \
	mpfr-msg-start   mpfr-tests      mpfr-msg-end
	@$(MAKE) pass-fail || { $(MAKE) diffout; exit 1; }

basic:	$(BASIC_TESTS)

unix-tests: $(UNIX_TESTS)

gawk-extensions: $(GAWK_EXT_TESTS)

charset-tests-all:
	@case `uname` in \
	*MINGW* | *MS-DOS*) \
		$(MAKE) charset-msg-start charset-tests charset-msg-end ;; \
	*) \
		if locale -a | grep -i 'en_US.UTF.*8' > /dev/null && \
		   locale -a | grep -i 'fr_FR.UTF.*8' > /dev/null && \
		   locale -a | grep -i 'ru_RU.UTF.*8' > /dev/null && \
		   locale -a | grep -i 'ja_JP.UTF.*8' > /dev/null  ; \
		then \
			$(MAKE) charset-msg-start charset-tests charset-msg-end; \
		else \
			echo %%%%%%%%%% Inadequate locale support: skipping charset tests. ; \
			echo %%%%%%%%%% At least en_US.UTF-8, fr_FR.UTF-8, ru_RU.UTF-8 and ja_JP.UTF-8 are needed. ; \
		fi ;; \
	esac

charset-tests: $(LOCALE_CHARSET_TESTS)

extra:	$(EXTRA_TESTS) inet

inet:	inetmesg $(INET_TESTS)

machine-tests: $(MACHINE_TESTS)

# The blank between ' and /MPFR/ is for running tests on Windows under
# MSYS, which thinks /MPFR is a Unix-style file name and converts it
# to Windows format, butchering it in the process.  Likewise for /API/
# in the next shlib-tests.
mpfr-tests:
	@if $(AWK) --version | $(AWK) ' /MPFR/ { exit 1 }' ; then \
	echo MPFR tests not supported on this system ; \
	else $(MAKE) $(NEED_MPFR) ; \
	fi

arraydebug-tests:
	@if echo $(CFLAGS) | grep ARRAYDEBUG > /dev/null ; then \
	$(MAKE) $(ARRAYDEBUG_TESTS) ; \
	else echo gawk is not compiled to support the array debug tests ; \
	fi

shlib-tests:
	@if $(AWK) --version | $(AWK) ' /API/ { exit 1 }' ; then \
	echo shlib tests not supported on this system ; \
	else $(MAKE) shlib-real-tests ; \
	fi

shlib-real-tests: $(SHLIB_TESTS)

msg::
	@echo ''
	@echo 'Any output from "$(CMP)" is bad news, although some differences'
	@echo 'in floating point values are probably benign -- in particular,'
	@echo 'some systems may omit a leading zero and the floating point'
	@echo 'precision may lead to slightly different output in a few cases.'

printlang::
	@$(AWK) -f "$(srcdir)"/printlang.awk

basic-msg-start:
	@echo "======== Starting basic tests ========"

basic-msg-end:
	@echo "======== Done with basic tests ========"

unix-msg-start:
	@echo "======== Starting Unix tests ========"

unix-msg-end:
	@echo "======== Done with Unix tests ========"

extend-msg-start:
	@echo "======== Starting gawk extension tests ========"

extend-msg-end:
	@echo "======== Done with gawk extension tests ========"

machine-msg-start:
	@echo "======== Starting machine-specific tests ========"

machine-msg-end:
	@echo "======== Done with machine-specific tests ========"

charset-msg-start:
	@echo "======== Starting tests that can vary based on character set or locale support ========"
	@echo "**************************************************************************"
	@echo "* Some or all of these tests may fail if you have inadequate or missing  *"
	@echo "* locale support. At least en_US.UTF-8, fr_FR.UTF-8, ru_RU.UTF-8 and     *"
	@echo "* ja_JP.UTF-8 are needed. The el_GR.iso88597 is optional but helpful.    *"
	@echo "* However, if you see this message, the Makefile thinks you have what    *"
	@echo "* you need ...                                                           *"
	@echo "**************************************************************************"

charset-msg-end:
	@echo "======== Done with tests that can vary based on character set or locale support ========"

shlib-msg-start:
	@echo "======== Starting shared library tests ========"

shlib-msg-end:
	@echo "======== Done with shared library tests ========"

mpfr-msg-start:
	@echo "======== Starting MPFR tests ========"

mpfr-msg-end:
	@echo "======== Done with MPFR tests ========"

# This test is a PITA because increasingly, /tmp is getting
# mounted noexec.  So, we'll test it locally.  Sigh.
#
# More PITA; some systems have medium short limits on #! paths,
# so this can still fail
poundbang::
	@echo $@
	@sed "s;/tmp/gawk;`pwd`/$(AWKPROG);" < "$(srcdir)"/poundbang.awk > ./_pbd.awk
	@chmod +x ./_pbd.awk
	@if ./_pbd.awk "$(srcdir)"/poundbang.awk > _`basename $@` ; \
	then : ; \
	else \
		sed "s;/tmp/gawk;$(AWKPROG);" < "$(srcdir)"/poundbang.awk > ./_pbd.awk ; \
		chmod +x ./_pbd.awk ; \
		LC_ALL=$${GAWKLOCALE:-C} LANG=$${GAWKLOCALE:-C} ./_pbd.awk "$(srcdir)"/poundbang.awk > _`basename $@`;  \
	fi
	@-$(CMP) "$(srcdir)"/poundbang.awk _`basename $@` && rm -f _`basename $@` _pbd.awk

messages::
	@echo $@
	@$(AWK) -f "$(srcdir)"/messages.awk >_out2 2>_out3 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/out1.ok _out1 && $(CMP) "$(srcdir)"/out2.ok _out2 && $(CMP) "$(srcdir)"/out3.ok _out3 && rm -f _out1 _out2 _out3

argarray::
	@echo $@
	@cp "$(srcdir)"/argarray.in ./argarray.input
	@TEST=test echo just a test | $(AWK) -f "$(srcdir)"/argarray.awk ./argarray.input - >_$@ || echo EXIT CODE: $$? >> _$@
	@rm -f ./argarray.input
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regtest::
	@echo $@
	@echo 'Some of the output from regtest is very system specific, do not'
	@echo 'be distressed if your output differs from that distributed.'
	@echo 'Manual inspection is called for.'
	@AWK=$(AWKPROG) "$(srcdir)"/regtest.sh

manyfiles::
	@echo $@
	@rm -rf junk
	@mkdir junk
	@$(AWK) 'BEGIN { for (i = 1; i <= 1030; i++) print i, i}' >_$@
	@$(AWK) -f "$(srcdir)"/manyfiles.awk _$@ _$@ || echo EXIT CODE: $$? >> _$@
	@wc -l junk/* | $(AWK) '$$1 != 2' | wc -l | sed "s/  *//g" > _$@
	@rm -rf junk
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

compare::
	@echo $@
	@$(AWK) -f "$(srcdir)"/compare.awk 0 1 "$(srcdir)"/compare.in >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

inftest::
	@echo $@
	@echo This test is very machine specific...
	@$(AWK) -f "$(srcdir)"/inftest.awk | sed "s/inf/Inf/g" >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getline2::
	@echo $@
	@$(AWK) -f "$(srcdir)"/getline2.awk "$(srcdir)"/getline2.awk "$(srcdir)"/getline2.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

awkpath::
	@echo $@
	@AWKPATH="$(srcdir)$(PATH_SEPARATOR)$(srcdir)/lib" $(AWK) -f awkpath.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

argtest::
	@echo $@
	@$(AWK) -f "$(srcdir)"/argtest.awk -x -y abc >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

badargs::
	@echo $@
	@-$(AWK) -f 2>&1 | grep -v patchlevel >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strftime::
	@echo $@
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=C ; export GAWKLOCALE; \
	TZ=GMT0; export TZ; \
	$(AWK) -v OUTPUT=_$@ -v DATECMD="$(DATE)" -f "$(srcdir)"/strftime.awk || echo EXIT CODE: $$? >> _$@
	@-$(CMP) strftime.ok _$@ && rm -f _$@ strftime.ok || exit 0

devfd::
	@echo $@
	@$(AWK) 1 /dev/fd/4 /dev/fd/5 4<"$(srcdir)"/devfd.in4 5<"$(srcdir)"/devfd.in5 >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# This cannot be autogenerated; we want it to read the input name
# on the command line.
errno:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

tweakfld::
	@echo $@
	@$(AWK) -f "$(srcdir)"/tweakfld.awk "$(srcdir)"/tweakfld.in >_$@ || echo EXIT CODE: $$? >> _$@
	@rm -f errors.cleanup
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# AIX /bin/sh exec's the last command in a list, therefore issue a ":"
# command so that pid.sh is fork'ed as a child before being exec'ed.
pid::
	@echo $@
	@AWKPATH="$(srcdir)" AWK=$(AWKPROG) $(SHELL) "$(srcdir)"/pid.sh $$$$ > _`basename $@` ; :
	@-$(CMP) "$(srcdir)"/pid.ok _`basename $@` && rm -f _`basename $@`

strftlng::
	@echo $@
	@TZ=UTC; export TZ; $(AWK) -f "$(srcdir)"/strftlng.awk >_$@
	@if $(CMP) "$(srcdir)"/strftlng.ok _$@ >/dev/null 2>&1 ; then : ; else \
	TZ=UTC0; export TZ; $(AWK) -f "$(srcdir)"/strftlng.awk >_$@ ; \
	fi
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nors::
	@echo $@
	@echo A B C D E | tr -d '\12\15' | $(AWK) '{ print $$NF }' - "$(srcdir)"/nors.in > _$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# fmtspcl.ok: fmtspcl.tok Makefile fix-fmtspcl.awk
# 	@$(AWK) -v "sd=$(srcdir)" -f "$(srcdir)/fix-fmtspcl.awk" < "$(srcdir)"/fmtspcl.tok > $@ 2>/dev/null
# 
# fmtspcl: fmtspcl.ok
# 	@echo $@
# 	@$(AWK) $(AWKFLAGS) -f "$(srcdir)"/fmtspcl.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
# 	@-if test -z "$$AWKFLAGS" ; then $(CMP) $@.ok _$@ && rm -f _$@ ; else \
# 	$(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
# 	fi

rebuf::
	@echo $@
	@AWKBUFSIZE=4096 AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsglstdin:: 
	@echo $@
	@cat  "$(srcdir)"/rsgetline.in | AWKPATH="$(srcdir)" $(AWK) -f rsgetline.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

pipeio1::
	@echo $@
	@$(AWK) -f "$(srcdir)"/pipeio1.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@rm -f test1 test2
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

pipeio2::
	@echo $@
	@$(AWK) -v SRCDIR="$(srcdir)" -f "$(srcdir)"/pipeio2.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clobber::
	@echo $@
	@$(AWK) -f "$(srcdir)"/clobber.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/clobber.ok seq && $(CMP) "$(srcdir)"/clobber.ok _$@ && rm -f _$@
	@rm -f seq

arynocls::
	@echo $@
	@-AWKPATH="$(srcdir)" $(AWK) -v INPUT="$(srcdir)"/arynocls.in -f arynocls.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getlnbuf::
	@echo $@
	@-AWKPATH="$(srcdir)" $(AWK) -f getlnbuf.awk "$(srcdir)"/getlnbuf.in > _$@ || echo EXIT CODE: $$? >> _$@
	@-AWKPATH="$(srcdir)" $(AWK) -f gtlnbufv.awk "$(srcdir)"/getlnbuf.in > _2$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/getlnbuf.ok _$@ && $(CMP) "$(srcdir)"/getlnbuf.ok _2$@ && rm -f _$@ _2$@

inetmesg::
	@echo These tests only work if your system supports the services
	@echo "'discard'" at port 9 and "'daytimed'" at port 13. Check your
	@echo file /etc/services and do "'netstat -a'".

inetechu::
	@echo This test is for establishing UDP connections
	@-$(AWK) 'BEGIN {print "" |& "/inet/udp/0/127.0.0.1/9"}'

inetecht::
	@echo This test is for establishing TCP connections
	@-$(AWK) 'BEGIN {print "" |& "/inet/tcp/0/127.0.0.1/9"}'

inetdayu::
	@echo This test is for bidirectional UDP transmission
	@-$(AWK) 'BEGIN { print "" |& "/inet/udp/0/127.0.0.1/13"; \
	"/inet/udp/0/127.0.0.1/13" |& getline; print $0}'

inetdayt::
	@echo This test is for bidirectional TCP transmission
	@-$(AWK) 'BEGIN { print "" |& "/inet/tcp/0/127.0.0.1/13"; \
	"/inet/tcp/0/127.0.0.1/13" |& getline; print $0}'

redfilnm::
	@echo $@
	@$(AWK) -f "$(srcdir)"/redfilnm.awk srcdir="$(srcdir)" "$(srcdir)"/redfilnm.in >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

space::
	@echo $@ $(ZOS_FAIL)
	@$(AWK) -f ' ' "$(srcdir)"/space.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsnulbig::
	@echo $@
	@ : Suppose that block size for pipe is at most 128kB:
	@$(AWK) 'BEGIN { for (i = 1; i <= 128*64+1; i++) print "abcdefgh123456\n" }' 2>&1 | \
	$(AWK) 'BEGIN { RS = ""; ORS = "\n\n" }; { print }' 2>&1 | \
	$(AWK) ' /^[^a]/; END{ print NR }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsnulbig2::
	@echo $@
	@$(AWK) 'BEGIN { ORS = ""; n = "\n"; for (i = 1; i <= 10; i++) n = (n n); \
		for (i = 1; i <= 128; i++) print n; print "abc\n" }' 2>&1 | \
		$(AWK) 'BEGIN { RS = ""; ORS = "\n\n" };{ print }' 2>&1 | \
		$(AWK) ' /^[^a]/; END { print NR }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# This test makes sure gawk exits with a zero code.
# Thus, unconditionally generate the exit code.
exitval1::
	@echo $@
	@$(AWK) -f "$(srcdir)"/exitval1.awk >_$@ 2>&1; echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fsspcoln::
	@echo $@
	@$(AWK) -f "$(srcdir)"/$@.awk 'FS=[ :]+' "$(srcdir)"/$@.in >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsstart3::
	@echo $@
	@head "$(srcdir)"/rsstart1.in | $(AWK) -f "$(srcdir)"/rsstart2.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# FIXME: Gentests can't really deal with something that is both a shell script
# and requires a locale. We might can fix that ...
rtlenmb::
	@echo $@
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE ; \
	"$(srcdir)"/rtlen.sh >_$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nofile::
	@echo $@ $(ZOS_FAIL)
	@$(AWK) '{}' no/such/file >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

binmode1::
	@echo $@
	@$(AWK) -v BINMODE=3 'BEGIN { print BINMODE }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

devfd1::
	@echo $@
	@$(AWK) -f "$(srcdir)"/$@.awk 4< "$(srcdir)"/devfd.in1 5< "$(srcdir)"/devfd.in2 >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# The program text is the '1' which will print each record. How compact can you get?
devfd2::
	@echo $@
	@$(AWK) 1 /dev/fd/4 /dev/fd/5 4< "$(srcdir)"/devfd.in1 5< "$(srcdir)"/devfd.in2 >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mixed1::
	@echo $@
	@$(AWK) -f /dev/null --source 'BEGIN {return junk}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbprintf5::
	@echo $@ $(ZOS_FAIL)
	@-case `uname` in \
	CYGWIN* | MSYS* | MINGW32* | *MS-DOS*) echo this test fails on this system --- skipping $@ ;; \
	*) \
	[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE ; \
	$(AWK) -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ ; \
	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
	esac

printfbad2: printfbad2.ok
	@echo $@
	@$(AWK) --lint -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in 2>&1 | sed 's;$(srcdir)/;;g' >_$@ || echo EXIT CODE: $$?  >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

beginfile1::
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk "$(srcdir)"/$@.awk . ./no/such/file Makefile  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

beginfile2:
	@echo $@ $(ZOS_FAIL)
	@-( cd "$(srcdir)" && LC_ALL=C AWK="$(abs_builddir)/$(AWKPROG)" $(abs_srcdir)/$@.sh $(abs_srcdir)/$@.in ) > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dumpvars::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --dump-variables 1 < "$(srcdir)"/$@.in >/dev/null 2>&1 || echo EXIT CODE: $$? >>_$@ || echo EXIT CODE: $$? >> _$@
	@grep -v ENVIRON < awkvars.out | grep -v PROCINFO > _$@; rm awkvars.out
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile0:
	@echo $@
	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in > /dev/null
	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile1:
	@echo $@
	@$(AWK) -f "$(srcdir)"/xref.awk "$(srcdir)"/dtdgport.awk > _$@.out1
	@$(AWK) --pretty-print=ap-$@.out -f "$(srcdir)"/xref.awk
	@$(AWK) -f ./ap-$@.out "$(srcdir)"/dtdgport.awk > _$@.out2 ; rm ap-$@.out
	@-$(CMP) _$@.out1 _$@.out2 && rm _$@.out[12] || { echo EXIT CODE: $$? >>_$@ ; \
	cp "$(srcdir)"/dtdgport.awk $@.ok ; }

profile2:
	@echo $@
	@$(AWK) --profile=ap-$@.out -v sortcmd=$(SORT) -f "$(srcdir)"/xref.awk "$(srcdir)"/dtdgport.awk > /dev/null
	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile3:
	@echo $@
	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk > /dev/null
	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --pretty=_$@ -f $@.awk 2> _$@.err
	@cat _$@.err >> _$@ ; rm -f _$@.err
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile6:
	@echo $@
	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk > /dev/null
	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile7:
	@echo $@
	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk > /dev/null
	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile12:
	@echo $@
	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@rm ap-$@.out
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrieee:
	@echo $@
	@$(AWK) -M -vPREC=double -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrexprange:
	@echo $@
	@$(AWK) -M -vPREC=53 -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrrnd:
	@echo $@
	@$(AWK) -M -vPREC=53 -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrsort:
	@echo $@
	@$(AWK) -M -vPREC=53 -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfruplus:
	@echo $@
	@$(AWK) -M -f "$(srcdir)"/uplus.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfranswer42:
	@echo $@
	@$(AWK) -M -f "$(srcdir)"/mpfranswer42.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrmemok1:
	@echo $@
	@$(AWK) -p- -M -f "$(srcdir)"/$@.awk 2>&1 | sed 1d > _$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

jarebug::
	@echo $@
	@"$(srcdir)"/$@.sh "$(AWKPROG)" "$(srcdir)"/$@.awk "$(srcdir)"/$@.in "_$@" || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ordchr2::
	@echo $@
	@$(AWK) --load ordchr 'BEGIN {print chr(ord("z"))}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# N.B. If the test fails, create readfile.ok so that "make diffout" will work
readfile::
	@echo $@
	@$(AWK) -l readfile 'BEGIN {printf "%s", readfile("$(srcdir)/Makefile.am")}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)/Makefile.am" _$@ && rm -f _$@ || cp -p "$(srcdir)/Makefile.am" $@.ok

readfile2::
	@echo $@
	@$(AWK) -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.awk "$(srcdir)"/readdir.awk > _$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsawk1a::
	@echo $@
	@$(AWK) -f "$(srcdir)"/nsawk1.awk > _$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsawk1b::
	@echo $@
	@$(AWK) -v I=fine -f "$(srcdir)"/nsawk1.awk > _$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsawk1c::
	@echo $@
	@$(AWK) -v awk::I=fine -f "$(srcdir)"/nsawk1.awk > _$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsawk2a::
	@echo $@
	@$(AWK) -v I=fine -f "$(srcdir)"/nsawk2.awk > _$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsawk2b::
	@echo $@
	@$(AWK) -v awk::I=fine -f "$(srcdir)"/nsawk2.awk > _$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

include2::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --include inclib 'BEGIN {print sandwich("a", "b", "c")}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

incdupe::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --lint -i inclib -i inclib.awk 'BEGIN {print sandwich("a", "b", "c")}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

incdupe2::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --lint -f inclib -f inclib.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

incdupe3::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --lint -f hello -f hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

incdupe4::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --lint -f hello -i hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

incdupe5::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --lint -i hello -f hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

incdupe6::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --lint -i inchello -f hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

incdupe7::
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --lint -f hello -i inchello >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

inplace1::
	@echo $@
	@cp "$(srcdir)"/inplace.1.in _$@.1
	@cp "$(srcdir)"/inplace.2.in _$@.2
	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2

inplace2::
	@echo $@
	@cp "$(srcdir)"/inplace.1.in _$@.1
	@cp "$(srcdir)"/inplace.2.in _$@.2
	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v inplace::suffix=.bak 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
	@-$(CMP) "$(srcdir)"/$@.1.bak.ok _$@.1.bak && rm -f _$@.1.bak
	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
	@-$(CMP) "$(srcdir)"/$@.2.bak.ok _$@.2.bak && rm -f _$@.2.bak

inplace2bcomp::
	@echo $@
	@cp "$(srcdir)"/inplace.1.in _$@.1
	@cp "$(srcdir)"/inplace.2.in _$@.2
	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v INPLACE_SUFFIX=.orig 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
	@-$(CMP) "$(srcdir)"/$@.1.orig.ok _$@.1.orig && rm -f _$@.1.orig
	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
	@-$(CMP) "$(srcdir)"/$@.2.orig.ok _$@.2.orig && rm -f _$@.2.orig

inplace3::
	@echo $@
	@cp "$(srcdir)"/inplace.1.in _$@.1
	@cp "$(srcdir)"/inplace.2.in _$@.2
	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v inplace::suffix=.bak 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v inplace::suffix=.bak 'BEGIN {print "Before"} {gsub(/bar/, "foo"); print} END {print "After"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >>_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
	@-$(CMP) "$(srcdir)"/$@.1.bak.ok _$@.1.bak && rm -f _$@.1.bak
	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
	@-$(CMP) "$(srcdir)"/$@.2.bak.ok _$@.2.bak && rm -f _$@.2.bak

inplace3bcomp::
	@echo $@
	@cp "$(srcdir)"/inplace.1.in _$@.1
	@cp "$(srcdir)"/inplace.2.in _$@.2
	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v INPLACE_SUFFIX=.orig 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v INPLACE_SUFFIX=.orig 'BEGIN {print "Before"} {gsub(/bar/, "foo"); print} END {print "After"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >>_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
	@-$(CMP) "$(srcdir)"/$@.1.orig.ok _$@.1.orig && rm -f _$@.1.orig
	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
	@-$(CMP) "$(srcdir)"/$@.2.orig.ok _$@.2.orig && rm -f _$@.2.orig

testext::
	@echo $@
	@$(AWK) ' /^(@load|BEGIN)/,/^}/' "$(top_srcdir)"/extension/testext.c > testext.awk
	@$(AWK) -f ./testext.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum'; \
	then cmp "."/$@-mpfr.ok _$@ && rm -f _$@ testext.awk testexttmp.txt ; \
	else cmp "."/$@.ok _$@ && rm -f _$@ testext.awk testexttmp.txt ; fi

getfile:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -v TESTEXT_QUIET=1 -ltestext -f $@.awk < $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

readdir:
	@echo $@
	@if [ "`uname`" = Linux ] && [ "`stat -f . 2>/dev/null | awk 'NR == 2 { print $$NF }'`" = nfs ];  then \
	echo This test may fail on GNU/Linux systems when run on NFS or JFS filesystems.; \
	echo If it does, try rerunning on an ext'[234]' filesystem. ; \
	fi
	@$(AWK) -f "$(srcdir)"/readdir.awk "$(top_srcdir)" > _$@ || echo EXIT CODE: $$? >> _$@
	@ls -afi "$(top_srcdir)" > _dirlist
	@ls -lna "$(top_srcdir)" | sed 1d > _longlist
	@$(AWK) -f "$(srcdir)"/readdir0.awk -v extout=_$@  \
		-v dirlist=_dirlist -v longlist=_longlist > $@.ok
	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@ _dirlist _longlist

readdir_test:
	@echo $@
	@$(AWK) -lreaddir -F/ '{printf "[%s] [%s] [%s] [%s]\n", $$1, $$2, $$3, $$4}' "$(top_srcdir)" > $@.ok
	@$(AWK) -lreaddir_test '{printf "[%s] [%s] [%s] [%s]\n", $$1, $$2, $$3, $$4}' "$(top_srcdir)" > _$@
	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@

readdir_retest:
	@echo $@
	@$(AWK) -lreaddir -F/ -f "$(srcdir)"/$@.awk "$(top_srcdir)" > $@.ok
	@$(AWK) -lreaddir_test -F/ -f "$(srcdir)"/$@.awk "$(top_srcdir)" > _$@
	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@

fts:
	@echo $@
	@case `uname` in \
	IRIX) \
	echo This test may fail on IRIX systems when run on an NFS filesystem.; \
	echo If it does, try rerunning on an xfs filesystem. ;; \
	CYGWIN* | MSYS*) \
	echo This test may fail on CYGWIN systems when run on an NFS filesystem.; \
	echo If it does, try rerunning on an ntfs filesystem. ;; \
	esac
	@$(AWK) -f "$(srcdir)"/fts.awk || echo EXIT CODE: $$? >> _$@
	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@

# BINMODE=2 is needed for PC tests.
charasbytes:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -b -v BINMODE=2 -f $@.awk "$(srcdir)"/$@.in | \
	od -c -t x1 | tr '	' ' ' | sed -e 's/  */ /g' -e 's/ *$$//' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab6:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab8:
	@echo $@ $(ZOS_FAIL)
	@$(AWK) -d__$@ -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in >_$@
	@grep -v '^ENVIRON' __$@ | grep -v '^PROCINFO' | grep -v '^FILENAME' >> _$@ ; rm __$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab9:
	@echo $@
	@$(AWK) -f "$(srcdir)"/$@.awk >_$@ || echo EXIT CODE: $$? >> _$@
	@rm -f testit.txt
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

reginttrad:
	@echo $@
	@$(AWK) --traditional -r -f "$(srcdir)"/$@.awk > _$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

colonwarn:
	@echo $@
	@for i in 1 2 3 ; \
	do $(AWK) -f "$(srcdir)"/$@.awk $$i < "$(srcdir)"/$@.in ; \
	done > _$@ || echo EXIT CODE: $$? >> _$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dbugeval::
	@echo $@
	@if [ -t 0 ]; then \
	$(AWK) --debug -f /dev/null < "$(srcdir)"/$@.in > _$@  2>&1 || echo EXIT CODE: $$? >>_$@ ; \
	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
	fi

filefuncs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk -v builddir="$(abs_top_builddir)"  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

genpot:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk --gen-pot >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

negtime::
	@echo $@
	@TZ=GMT AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@AWKPATH="$(srcdir)" $(AWK) -f checknegtime.awk "$(srcdir)"/$@.ok _$@ && rm -f _$@

watchpoint1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk $(srcdir)/$@.in < $(srcdir)/$@.script >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

pty1:
	@echo $@
	@-case `uname` in \
	*[Oo][Ss]/390*) : ;; \
	*) AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ ; \
	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ;; \
	esac

pty2:
	@echo $@
	@-case `uname` in \
	*[Oo][Ss]/390*) : ;; \
	*) AWKPATH="$(srcdir)" $(AWK) -f $@.awk | od -c | $(AWK) '{ $$1 = $$1 ; print }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ ; \
	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ;; \
	esac

ignrcas3::
	@echo $@
	@if locale -a | grep el_GR.iso88597 > /dev/null ; then \
	[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=el_GR.iso88597 ; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ ; \
	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
	fi

arrdbg:
	@echo $@
	@$(AWK) -v "okfile=./$@.ok" -v "mpfr_okfile=./$@-mpfr.ok" -f "$(srcdir)"/$@.awk | grep array_f >_$@ || echo EXIT CODE: $$? >> _$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum'; \
	then cmp "."/$@-mpfr.ok _$@ && rm -f _$@ $@.ok $@-mpfr.ok ; \
	else cmp "."/$@.ok _$@ && rm -f _$@ $@.ok $@-mpfr.ok ; fi

sourcesplit:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) --source='BEGIN { a = 5;' --source='print a }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

eofsrc1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@a.awk -f $@b.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsbad_cmd:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -v foo:bar=3 -v foo:::blat=4 1 /dev/null >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# Use [:] in the regexp to keep MSYS from converting the /'s to \'s.
nonfatal1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk 2>&1 | $(AWK) '{print gensub(/invalid[:].*$$/, "invalid", 1, $$0)}' >_$@ || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# 4/2018: On first call to $(CMP), send to /dev/null even with -s for MinGW.
nlstringtest::
	@echo $@
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=fr_FR.UTF-8 ; export GAWKLOCALE ; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk "$(srcdir)" >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if $(CMP) -s "$(srcdir)"/nlstringtest-nogettext.ok _$@ > /dev/null ; \
	then \
		rm -f _$@ ; \
	else \
		$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
	fi

longwrds:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk -v SORT="$(SORT)" < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

spacere:
	@echo $@
	@LC_ALL=C AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typedregex4:
	@echo $@
	@$(AWK) -v x=@/foo/ -f "$(srcdir)"/$@.awk y=@/bar/ /dev/null >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

iolint:
	@echo $@
	@echo hello > 'echo hello'
	@touch 'exec cat' ; chmod 755 'exec cat'
	@$(AWK) -f "$(srcdir)"/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
	@-$(RM) -f cat 'echo hello' 'exec cat' f1 f2 md5sum
Gt-dummy:
# file Maketests, generated from Makefile.am by the Gentests program
addcomma:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

anchgsub:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

anchor:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrayind1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrayind2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrayind3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrayparm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrayprm2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrayprm3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrayref:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arrymem1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arryref2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arryref3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arryref4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arryref5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arynasty:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm6:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm7:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm8:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryprm9:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arysubnm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aryunasgn:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

asgext:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

assignnumfield:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

assignnumfield2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

back89:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

backgsub:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

badassign1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

badbuild:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

callparam:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

childin:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

closebad:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clsflnam:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

compare2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

concat1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

concat2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

concat3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

concat4:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

concat5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

convfmt:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

datanonl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

defref:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

delargv:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

delarpm2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

delarprm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

delfunc:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dfacheck2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dfamb1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dfastress:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dynlj:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

escapebrace:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --posix < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

eofsplit:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

exit2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

exitval2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

exitval3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fcall_exit:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fcall_exit2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fldchg:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fldchgnf:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fldterm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnamedat:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnarray:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnarray2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnaryscl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnasgnm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnmisc:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fordel:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

forref:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

forsimp:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fsbs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fscaret:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fsnul1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fsrs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fstabplus:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

funsemnl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

funsmnam:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

funstack:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getline:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getline3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getline4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getline5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getnr2tb:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getnr2tm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubasgn:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtest:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtst2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtst3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --re-interval < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtst4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtst5:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtst6:
	@echo $@
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=C; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtst7:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubtst8:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

hex:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

hex2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

hsprint:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

inpref:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

inputred:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

intest:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

intprec:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

iobug1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

leaddig:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

leadnl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

litoct:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --traditional < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

longsub:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

manglprm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

math:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

membug1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

memleak:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

minusstr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mmap8k:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nasty:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nasty2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

negexp:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

negrange:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nested:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nfldstr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nfloop:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nfneg:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nfset:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nlfldsep:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nlinstr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nlstrina:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

noeffect:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nofmtch:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

noloop1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

noloop2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nonl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

noparms:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nulinsrc:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nulrsend:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

numindex:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

numrange:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum' > /dev/null ; \
	then $(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
	else $(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; fi

numstr1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

numsubstr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

octsub:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ofmt:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ofmta:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ofmtbig:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ofmtfidl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ofmts:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ofmtstrnum:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ofs1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

onlynl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

opasnidx:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

opasnslf:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

paramasfunc1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --posix >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

paramasfunc2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --posix >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

paramdup:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

paramres:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

paramtyp:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

paramuninitglobal:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

parse1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

parsefld:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

parseme:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

pcntplus:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

posix_compare:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --posix >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

posix2008sub:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --posix >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

prdupval:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

prec:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

printf0:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --posix >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

printf1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

printfchar:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

prmarscl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

prmreuse:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

prt1eval:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

prtoeval:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rand:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum' > /dev/null ; \
	then $(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
	else $(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; fi

randtest:
	@echo $@
	@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh  > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

range1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

range2:
	@echo $@
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=C; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

readbuf:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rebrackloc:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rebt8b1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rebuild:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regeq:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regexpbrack:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regexpbrack2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regexprange:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regrange:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

reindops:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

reparse:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

resplit:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rri1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rscompat:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --traditional < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsnul1nl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsnulw:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rstest1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rstest2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rstest3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rstest4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rstest5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rswhite:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

scalar:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sclforin:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sclifin:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

setrec0:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

setrec1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sigpipe1:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sortempty:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sortglos:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

splitargv:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

splitarr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

splitdef:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

splitvar:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

splitwht:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

status-close:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strcat1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strfieldnum:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strnum1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strnum2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strtod:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

subamp:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

subback:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

subi18n:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

subsepnm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

subslash:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

substr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

swaplns:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

synerr1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

synerr2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

synerr3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

tailrecurse:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

tradanch:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --traditional < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

trailbs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

uninit2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

uninit3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

uninit4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

uninit5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

uninitialized:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

unterm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

uparrfs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

uplus:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

wideidx:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

wideidx2:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

widesub:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

widesub2:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

widesub3:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

widesub4:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

wjposer1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

zero2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

zeroe0:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

zeroflag:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fflush:
	@echo $@
	@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh  > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getlnhd:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

localenl:
	@echo $@
	@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh  > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rtlen:
	@echo $@
	@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh  > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rtlen01:
	@echo $@
	@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh  > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aadelete1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aadelete2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aarray1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aasort:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

aasorti:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arraysort:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arraysort2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

arraytype:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum' > /dev/null ; \
	then $(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
	else $(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; fi

backw:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clos1way:
	@echo $@
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=C; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clos1way2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clos1way3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clos1way4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clos1way5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

clos1way6:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

crlf:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dbugeval2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --debug < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dbugeval3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --debug < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dbugtypedre1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --debug < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dbugtypedre2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --debug < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

delsub:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

dfacheck1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

exit:
	@echo $@
	@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh  > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fieldwdth:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

forcenum:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --non-decimal-data >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum' > /dev/null ; \
	then $(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
	else $(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; fi

fpat1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpat2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpat3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpat4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpat5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpat6:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpat7:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpat8:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fpatnull:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fsfwfs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

funlen:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

functab1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

functab2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

functab3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest6:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest7:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fwtest8:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gensub:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gensub2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gensub3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

getlndir:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gnuops2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gnuops3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gnureops:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

gsubind:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

icasefs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

icasers:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

id:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

igncdym:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

igncfs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ignrcas2:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ignrcas4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ignrcase:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

include:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

indirectbuiltin:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

indirectcall:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

indirectcall2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

intarray:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --non-decimal-data >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

isarrayunset:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lint:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintexp:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintindex:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintint:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintlength:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintplus:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintold:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint-old < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintset:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

lintwarn:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

match1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

match2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

match3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbstr1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbstr2:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mktime:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

muldimposix:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --posix >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nastyparm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

next:
	@echo $@
	@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh  > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nondec:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nondec2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --non-decimal-data >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nonfatal2:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nonfatal3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsbad:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsforloop:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsfuncrecurse:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsindirect1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsindirect2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsprof1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

nsprof2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

patsplit:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

posix:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

printfbad1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

printfbad3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

printfbad4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

printhuge:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

procinfs:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile8:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile9:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile10:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile11:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile13:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile14:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

profile15:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --pretty-print=_$@ >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regnul1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regnul2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

regx8bit:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

reint:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --re-interval < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

reint2:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --re-interval < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsgetline:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsstart1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rsstart2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rstest6:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sandbox1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --sandbox >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

shadow:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

shadowbuiltin:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sortfor:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sortfor2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sortu:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

split_after_fpat:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

splitarg4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strftfld:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strtonum:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

strtonum1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

stupid1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

stupid2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

stupid3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

stupid4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

switch2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab1:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab7:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab10:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  --debug < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

symtab11:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

timeout:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typedregex1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typedregex2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typedregex3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typedregex5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typedregex6:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typeof1:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typeof2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typeof3:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typeof4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

typeof5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

double1:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

double2:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

intformat:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

asort:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

asorti:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

backbigs1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

backsmalls1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

backsmalls2:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fmttest:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnarydel:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum' > /dev/null ; \
	then $(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
	else $(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; fi

fnparydl:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-if echo "$$GAWK_TEST_ARGS" | egrep -q -e '-M|--bignum' > /dev/null ; \
	then $(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
	else $(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; fi

lc_num1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbfw1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbprintf1:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbprintf2:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=ja_JP.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbprintf3:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mbprintf4:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mtchi18n:
	@echo $@ $(ZOS_FAIL)
	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=ru_RU.UTF-8; export GAWKLOCALE; \
	AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rebt8b2:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sort1:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

sprintfc:
	@echo $@ $(ZOS_FAIL)
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

apiterm:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fnmatch:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fork:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

fork2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

functab4:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

functab5:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

ordchr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

revout:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

revtwoway:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

rwarray:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

time:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrbigint:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrbigint2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M --non-decimal-data < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrcase:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrcase2:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrfield:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrnegzero:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrnonum:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrnr:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrrem:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrrndeval:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrsqrt:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpfrstrtonum:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

mpgforcenum:
	@echo $@
	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk  -M >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@

# end of file Maketests

# Targets generated for other tests:

Maketests: $(srcdir)/Makefile.am $(srcdir)/Gentests
	files=`cd "$(srcdir)" && echo *.awk *.in *.sh`; \
	$(AWK) -f "$(srcdir)"/Gentests "$(srcdir)"/Makefile.am $$files > $@

clean-local:
	rm -fr _* core core.* fmtspcl.ok junk strftime.ok test1 test2 \
	seq *~ readfile.ok fork.tmp.* testext.awk fts.ok readdir.ok \
	readdir_test.ok readdir_retest.ok \
	profile1.ok

# An attempt to print something that can be grepped for in build logs
pass-fail:
	@COUNT=`ls _* 2>/dev/null | wc -l` ; \
	if test $$COUNT = 0 ; \
	then	echo ALL TESTS PASSED ; \
	else	echo $$COUNT TESTS FAILED ; exit 1; \
	fi

# This target for my convenience to look at all the results
# Don't use POSIX or bash-isms so that it'll work on !@#$%^&*() Solaris.
diffout:
	for i in _* ; \
	do  \
		if [ "$$i" != "_*" ]; then \
		echo ============== $$i ============= ; \
		base=`echo $$i | sed 's/^_//'` ; \
		if [ -r $${base}.ok ]; then \
		diff -u $${base}.ok $$i ; \
		else \
		diff -u "$(srcdir)"/$${base}.ok  $$i ; \
		fi ; \
		fi ; \
	done | more

# make things easier for z/OS
zos-diffout:
	@for i in $(EXPECTED_FAIL_ZOS); do \
		if [ -f _$$i ]; then mv -f _$$i X_$$i ; fi ; \
		if [ ! -f X_$$i ]; then echo $$i apparently passed! please check ; fi ; done
	@echo checking for new failures ...
	@$(MAKE) diffout

# convenient way to scan valgrind results for errors
valgrind-scan:
	@echo "Scanning valgrind log files for problems:"
	@$(AWK) -f "$(srcdir)"/valgrind.awk log.[0-9]*

# This target is for testing with electric fence.
efence:
	for i in $$(ls _* | sed 's;_\(.*\);\1;') ; \
	do \
		bad=$$(wc -l < _$$i) \
		ok=$$(wc -l < $$i.ok) ; \
		if (( $$bad == $$ok + 2 )) ; \
		then \
			rm _$$i ; \
		fi ; \
	done

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
